package org.tri.gui.worker.retrievers;

import java.util.ArrayList;
import java.util.List;
import org.tri.entity.Establecimiento;
import org.tri.entity.Productor;

/**
 * La clase {@code EstablecimientoRetriever} es un retriever específico que 
 * devuelve {@code Establecimiento}s utilizando un productor como fuente 
 * para los mismos.
 * @author kiira
 * @version 1.0, Jan 31, 2012
 */
public class EstablecimientoDataRetrieverProductor implements
        DataRetriever<Establecimiento> {
    
    /** Productor de donde se obtendrán los establecimientos. */
    private Productor productor;
    
    /**
     * Inicializa el retriever con el productor especificado.
     * @param productor productor de donde obtener los establecimientos.
     */
    public EstablecimientoDataRetrieverProductor( Productor productor ) {
        this.productor = productor;

    }//end constructor

    /**
     * {@inheritDoc}
     */
    @Override
    public List<Establecimiento> retrieveData() {
        return new ArrayList<Establecimiento>( productor.getEstablecimientos() );

    }//end método retrieveData

}//end clase EstablecimientoDataRetrieverProductor
